Skip to content

boost: support for cross-compiling to mips64el#161162

Merged
SuperSandro2000 merged 1 commit intomasterfrom
unknown repository
Apr 13, 2022
Merged

boost: support for cross-compiling to mips64el#161162
SuperSandro2000 merged 1 commit intomasterfrom
unknown repository

Conversation

@ghost
Copy link

@ghost ghost commented Feb 21, 2022

This patch adds support for cross-compiling boost to a mips64el hostPlatform.

Motivation for this change

This is needed in order to bootstrap nixpkgs on a mips64el hostPlatform -- if the initial mips64el nix binary is to be built using nixpkgs, it needs to be cross-compiled from some other platform.

Things done
  • Built on platform(s)
    • x86_64-linux
    • mips64el-linux (cross from x86_64-linux)
    • aarch64-linux
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Fits CONTRIBUTING.md.

@github-actions github-actions bot added the 6.topic: stdenv Standard environment label Feb 21, 2022
@ghost ghost requested review from edolstra and infinisil as code owners February 21, 2022 06:22
@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Feb 21, 2022
@ghost
Copy link
Author

ghost commented Feb 24, 2022

Previous push just rebases updates to #161159.

This was referenced Feb 26, 2022
@ghost
Copy link
Author

ghost commented Mar 3, 2022

Latest push rebases against #161159 and squashes this PR into a single commit; no other changes.

@ghost ghost changed the title mips64: support for cross-compiling boost to a mips64 target boost: support for cross-compiling boost to a mips64 target Mar 3, 2022
@ghost ghost changed the title boost: support for cross-compiling boost to a mips64 target boost: support for cross-compiling mips64el Mar 3, 2022
@ghost ghost requested a review from SuperSandro2000 March 4, 2022 19:11
@ghost
Copy link
Author

ghost commented Mar 4, 2022

Latest push squashes to a single commit and rebases on #161159; no other changes.

@ofborg ofborg bot requested a review from hjones2199 March 4, 2022 20:13
@ofborg ofborg bot added 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. 10.rebuild-linux-stdenv This PR causes stdenv to rebuild on Linux and must target a staging branch. and removed 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Mar 4, 2022
@ofborg ofborg bot requested a review from Ma27 March 4, 2022 21:49
@ofborg ofborg bot added 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. and removed 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. labels Mar 5, 2022
@ofborg ofborg bot requested a review from hjones2199 April 12, 2022 03:22
@ofborg ofborg bot added 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. and removed 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux. labels Apr 12, 2022
Copy link
Member

@SuperSandro2000 SuperSandro2000 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

after that I think we can merge this. Going to build it locally to see if something regresses.

@SuperSandro2000
Copy link
Member

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).

Result of nixpkgs-review pr 161162 run on x86_64-linux 1

1 package marked as broken and skipped:
  • rapcad
6 packages failed to build and already failed to build on hydra master:
19 packages failed to build and are new build failures:
  • amarok: log was empty
  • (amarok-kf5): log was empty
  • (python39Packages.appleseed): log was empty
  • boost155: plain log | pretty log
  • boost159: plain log | pretty log
  • (boost15x): log was empty
  • boost160: plain log | pretty log
  • cqrlog: log was empty
  • globulation2: log was empty
  • mongodb: log was empty
  • (mongodb-3_4): log was empty
  • mongodb-3_6: log was empty
  • mongodb-4_0: plain log | pretty log
  • mongodb-4_2: plain log | pretty log
  • mysql57: log was empty
  • percona-xtrabackup_2_4: log was empty
  • qpid-cpp: log was empty
  • spring: log was empty
  • springLobby: log was empty
38 packages built:
  • SkypeExport
  • arc_unpacker
  • bitcoin-abc
  • bitcoin-classic
  • bitcoin-gold
  • bitcoind-abc
  • bitcoind-classic
  • bitcoind-gold
  • boost165
  • boost166
  • boost168
  • boost169 (boost16x)
  • clfft
  • cpp-netlib
  • dogecoin
  • dogecoind
  • ethminer (ethminer-cuda)
  • ethminer-free
  • foundationdb (foundationdb61)
  • freecad
  • freeorion
  • ispike
  • mirtk
  • mozart2
  • performous
  • pokerth
  • pokerth-server
  • python310Packages.foundationdb61
  • python39Packages.boost169
  • python39Packages.foundationdb61
  • starspace
  • sumokoin
  • swift-im
  • twister
  • vertcoin
  • vertcoind
  • xtreemfs
  • yafaray-core

@ghost
Copy link
Author

ghost commented Apr 12, 2022

  • amarok: log was empty

  • (amarok-kf5): log was empty

  • (python39Packages.appleseed): log was empty

  • boost155: plain log | pretty log

  • boost159: plain log | pretty log

  • (boost15x): log was empty

  • boost160: plain log | pretty log

  • cqrlog: log was empty

  • globulation2: log was empty

  • mongodb: log was empty

  • (mongodb-3_4): log was empty

  • mongodb-3_6: log was empty

  • mongodb-4_0: plain log | pretty log

  • mongodb-4_2: plain log | pretty log

  • mysql57: log was empty

  • percona-xtrabackup_2_4: log was empty

  • qpid-cpp: log was empty

  • spring: log was empty

  • springLobby: log was empty

Thanks, I am investigating these.

@ofborg ofborg bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Apr 12, 2022
@ghost
Copy link
Author

ghost commented Apr 12, 2022

Resolved merge conflict with master.

@ghost
Copy link
Author

ghost commented Apr 12, 2022

Okay, latest push should fix the breakage. The patch to backport mips64n64 support doesn't apply cleanly to anything before 1.65, but very few packages require a version of boost older than that.

@ghost ghost requested a review from SuperSandro2000 April 12, 2022 22:21
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
@ghost
Copy link
Author

ghost commented Apr 12, 2022

I'm running nixpkgs-review pr 161162 myself, it'll take a while though.

@ofborg ofborg bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label Apr 12, 2022
@ghost
Copy link
Author

ghost commented Apr 13, 2022

I'm running nixpkgs-review pr 161162 myself, it'll take a while though.

8 packages failed to build:
appleseed masari mongodb-4_0 mongodb-4_2 osl python310Packages.appleseed python310Packages.boost169 sourcetrail

Of these, only mongodb-4_0 and mongodb-4_2 were not on the "already failing before PR" list. I tried building those at the previous commit and they failed there as well, with:

src/mongo/stdx/thread.h: At global scope:
src/mongo/stdx/thread.h:109:56: error: call to non-'constexpr' function 'long int sysconf(int)'
  109 |         std::max(kMongoMinSignalStackSize, std::size_t{MINSIGSTKSZ});
      |                                                        ^~~~~~~~~~~

So, I'm going to say that at this point this PR is not causing any additional breakage. @SuperSandro2000, could you run your bot-tool again? I think this is ready to merge now.

@SuperSandro2000
Copy link
Member

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).

Result of nixpkgs-review pr 161162 run on x86_64-linux 1

6 packages failed to build and already failed to build on hydra master:
3 packages failed to build and are new build failures:
38 packages built:
  • SkypeExport
  • arc_unpacker
  • bitcoin-abc
  • bitcoin-classic
  • bitcoin-gold
  • bitcoind-abc
  • bitcoind-classic
  • bitcoind-gold
  • boost165
  • boost166
  • boost168
  • boost169 (boost16x)
  • clfft
  • cpp-netlib
  • dogecoin
  • dogecoind
  • ethminer (ethminer-cuda)
  • ethminer-free
  • foundationdb (foundationdb61)
  • freecad
  • freeorion
  • ispike
  • mirtk
  • mozart2
  • performous
  • pokerth
  • pokerth-server
  • python310Packages.foundationdb61
  • python39Packages.boost169
  • python39Packages.foundationdb61
  • starspace
  • sumokoin
  • swift-im
  • twister
  • vertcoin
  • vertcoind
  • xtreemfs
  • yafaray-core

@SuperSandro2000 SuperSandro2000 merged commit 560c144 into NixOS:master Apr 13, 2022
@ghost
Copy link
Author

ghost commented Apr 13, 2022

Yeah these also fail at the commit prior to this PR, so I think nixpkgs-review's list of "existing failures" is slightly out of date or something.

@ghost ghost deleted the mips64-boost branch April 13, 2022 10:43
@SuperSandro2000
Copy link
Member

Yeah these also fail at the commit prior to this PR, so I think nixpkgs-review's list of "existing failures" is slightly out of date or something.

it uses the latest hydra eval which can be a few days behind.

Copy link
Member

@hjones2199 hjones2199 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know its already merged, but just wanted to confirm the three failed builds seem to be from before

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants